Select na datumy v rozmezi
Otázka od: Ing. Petr Sikola
29. 7. 2004 6:51
Zdravim konferenci, pokousim se napsat sql ktere by vybralo podle nejake
podmminky zaznamy a k tomu jeste zaznamy, u kterych je datum v toleranci
do 5 sec od nektereho z predtim vybranych (kazdeho samostatne). Bohuzel
se s tim stale potykam
Select je takovyto:
select DATUM,SLA,SLB,SLC from DATA where SLA='abcde' and SLB='xx' and
DATUM > '20040701 0:00:00' and SLC = 67
A ted bych k tomu potreboval prodat zaznamy, ktere se v datumu lisi
treba o 10 sec
Neco jako
select DATUM,SLA,SLB,SLC from DATA where SLB='xx' and DATUM >
'20040701
0:00:00' and SLC = 67 /*podminka na SLA schvalne vypustena*/
and ABS(datediff(second,DATUM,?DATUM_z_predchoziho_selectu?))<10
Ale nevim jak to k sobe napojit
Je to na MSSQL
Diky za nakopnuti
Petr Sikola
Odpovedá: Martin Cajbik
29. 7. 2004 6:41
Zdravim,
prve co ma napadlo bolo nieco take:
select DATUM,SLA,SLB,SLC
from DATA A
where (SLA='abcde' and SLB='xx' and
DATUM > '20040701 0:00:00' and SLC = 67) OR
EXISTS(select * from DATA B
where (B.SLA='abcde' and B.SLB='xx' and B.SLC = 67 and
B.DATUM BETWEEN DATEADD(second, -5, A.Datum) AND DATEADD(second, 5,
A.Datum))
Martin Cajbik
Ing. Petr Sikola wrote:
>Zdravim konferenci, pokousim se napsat sql ktere by vybralo podle nejake
>podmminky zaznamy a k tomu jeste zaznamy, u kterych je datum v toleranci
>do 5 sec od nektereho z predtim vybranych (kazdeho samostatne). Bohuzel
>se s tim stale potykam
>
>Select je takovyto:
>
>select DATUM,SLA,SLB,SLC from DATA where SLA='abcde' and SLB='xx' and
>DATUM > '20040701 0:00:00' and SLC = 67
>
>A ted bych k tomu potreboval prodat zaznamy, ktere se v datumu lisi
>treba o 10 sec
>Neco jako
>
>select DATUM,SLA,SLB,SLC from DATA where SLB='xx' and DATUM >
'20040701
>0:00:00' and SLC = 67 /*podminka na SLA schvalne vypustena*/
>and ABS(datediff(second,DATUM,?DATUM_z_predchoziho_selectu?))<10
>
>Ale nevim jak to k sobe napojit
>
>Je to na MSSQL
>